let arr = ['e', 'a', 't'].sort()
console.log(arr)
    // 给你一个字符串数组，请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。

// 字母异位词 是由重新排列源单词的字母得到的一个新单词，所有源单词中的字母都恰好只用一次。
/**
 * @param {string[]} strs
 * @return {string[][]}
 */
var groupAnagrams = function(strs) {
    let res = new Array(strs.length)
    res[0] = [strs[0]]
    for (let j = 0; j < strs.length; j++) {
        for (let i = 0; i < res.length; i++) {
            let flag = res[i] && res[i][0].split("").every((item, index) => {
                return strs[j].indexOf(item) != -1;
            })
            flag ? res[i].push(strs[j]) : (res[i + 1] = [strs[j]])
        }
    }
    return res
};
// 哈希表，将排序完成的部分作为键值
var groupAnagrams = function(strs) {
    let h = {};
    for (str of strs) {
        let key = str.split("").sort().join("");
        h[key] ? h[key].push(str) : h[key] = [str];
    }
    return Object.values(h)
};